package com.clps.rulesregulations.service;

import com.clps.rulesregulations.domain.AccessFile;
import com.github.pagehelper.PageInfo;
import com.clps.rulesregulations.domain.Role;

import java.util.List;
import java.util.Map;

/**
 * 角色
 */
public interface RoleService {

    /**
     * 根据用户id查询角色
      * @param userId
     * @return
     */
    List<Role> findRolesByUserId(Integer userId);

    /**
     * 分页查询所有角色
     * @param condition
     * @return
     */
    PageInfo<Role> findRolesByPage(Map<String, Object> condition);
    PageInfo<AccessFile> findAccessFileLogByPage(Map<String, Object> condition);

    /**
     * 删除角色 同时删除角色资源表中的数据
     * @param roleId
     */
    void delRoleByRoleId(Integer roleId);

    void addRole(Role role);

    Role findRoleById(Integer roleId);

    void updateRole(Role role);

    List<Role> findAll();
}
